package com.allinpay.merchantweb.controller;

import java.util.HashMap;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.allinpay.merchantweb.common.exception.ViewException;
import com.allinpay.merchantweb.common.utils.StringUtil;
import com.allinpay.merchantweb.constants.ReturnCodeConstants;

public class BaseController {

    private static final Logger logger = LoggerFactory.getLogger(BaseController.class);

//    /**
//     * 判断会话是否存在
//     * 
//     * @param req
//     * @param resp
//     * @return
//     */
//    public boolean validateSession(HttpServletRequest req, String sessionValue) {
//        if (null == req.getSession(false)) {
//            return false;
//        }
//        if (null == req.getSession().getAttribute(sessionValue)) {
//            return false;
//        } else {
//            return true;
//        }
//    }

    /**
     * 异常页面
     * 
     * @return
     */
    public Map getErrorToMap(ViewException e) {
        logger.error("ViewException异常code=" + e.getErrorCode() + "msg" + e.getErrorMsg(), e);
        Map map = new HashMap<String, String>();
        if (StringUtil.isEmpty(e.getErrorCode()) || StringUtil.isEmpty(e.getErrorMsg())) {
            // 未知异常
            logger.error("ViewException异常信息不全,抛出未知异常");
        }
        map.put("code", e.getErrorCode());
        map.put("msg", e.getErrorMsg());
        return map;
    }

    /**
     * 异常页面
     * 
     * @return
     */
    public Map getErrorToMap(Exception e) {
        logger.error("未知Exception异常", e);
        Map map = new HashMap<String, String>();
        map.put("msg", "未知异常");
        return map;
    }

}
